The present invention relates to signal processors and, more particularly, to a device which includes an enhanced look-up table for use in digital signal processing. Specifically, the device includes features appropriate for efficient image processing.
Digital signal processing (DSP) includes analysis and processing of signals in a digital representation. DSP includes audio and speech signal processing, sonar and radar signal processing, sensor array processing, spectral estimation, statistical signal processing, image processing, signal processing for communications, biomedical signal processing, seismic data processing, etc.
Since the goal of DSP is usually to measure or filter continuous real-world analog signals, the first step is usually to convert the signal from an analog to a digital form, by using an analog to digital converter. If the required output signal is another analog output signal, then a digital to analog converter is required at the output.
Algorithms required for DSP are sometimes performed using specialized microprocessors called digital signal processors. Digital signal processors process signals in real time and are generally designed as application-specific integrated circuits (ASICs). When flexibility and rapid development are more important than unit costs at high volume, DSP algorithms may also be implemented using field-programmable gate arrays (FPGAs).
(from http://en.wikipedia.org/wiki/Digital_signal_processing)
In computer science, a lookup table in digital processing is an array of registers or memory buffer which allows specific access, i.e. read and write commands based on previously known addresses of the registers and/or memory elements. A lookup table is for example, an associative array used to replace a runtime computation with a simpler lookup operation. Through use of a lookup table, rather than performing the computation each time an entry is accessed, a speed gain can be significant, since retrieving a value from memory is often faster than undergoing a time consuming computation.
A classic example is a trigonometry calculation i.e. calculating the sine of an angle. To avoid unnecessary calculations, a number of sine values are pre-calculated, for example for each whole number of degrees. Later, when the program requires the sine of an angle, the lookup table is used to retrieve the sine of a nearby angle from a memory address instead of calculating it using the mathematical formula.
Before the advent of computers, similar tables were used by people to speed up hand calculations. Particularly prevalent were tables of values for trigonometry, logarithms, and statistical density functions.
In image processing, lookup tables (LUT) are often used to provide an output value for a range of index values. One common LUT is a colormap or palette used to determine colors and intensity values with which a particular image is displayed. (from http://en.wikipedia.org/wiki/Look-up_table)
In statistics, a histogram is a data structure or table in which frequency of occurrence of data is tabulated. The possible data values are divided into several categories or bins and the frequency of occurrence is tabulated for each bin. A histogram is often represented graphically as a bar graph. In image processing, image data is typically tabulated in a histogram based on frequency of occurrence in bins of gray scale or color information.
The symbol “x” is used to denote hexadecimal notation as in “xFF”.
The terms “location”, “index” and “address” are used herein interchangeably.